package com.wang.springbootinit.service;

import cn.hutool.db.PageResult;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wang.springbootinit.model.entity.Student;
import com.wang.springbootinit.model.entity.TestGuide;
import com.wang.springbootinit.model.param.TestGuideQuery;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;

/**
 * 测试指南服务接口
 */
public interface TestGuideService extends IService<TestGuide> {
    
    /**
     * 管理员发布测试指南
     */
    boolean publishGuide(String title, String content, MultipartFile file, HttpServletRequest request);
    
    /**
     * 管理员修改测试指南
     */
    void updateGuide(Integer id,String title, String content, MultipartFile file, HttpServletRequest request);
    
    /**
     * 管理员下架测试指南
     */
    void offlineGuide(Long id);
    
    /**
     * 管理员删除测试指南
     */
    void deleteGuide(Long id);
    
    /**
     * 分页查询测试指南列表
     */
    Page<TestGuide> pageGuides(TestGuideQuery query);
    
    /**
     * 获取测试指南详情
     */
    TestGuide getGuideDetail(Long id);
    
    /**
     * 上传指南视频
     */
    String uploadVideo(MultipartFile file);
}